檢查是否已安裝:pip show selenium
1.安裝 Seleniumpip install selenium
2.下載 ChromeDriver
確保 ChromeDriver 版本與 Chrome 瀏覽器版本相匹配,是進行網頁自動化測試的重要一環。若版本不一致,可能會導致腳本執行失敗或產生不可預期的結果
檢查 Chrome 版本
開啟 Chrome 瀏覽器。
在網址列輸入 chrome://settings/help,並按下 Enter。
在「關於 Google Chrome」頁面中,你會看到詳細的 Chrome 版本資訊。
檢查 ChromeDriver 版本
chromedriver --version
or
from selenium import webdriver
# 創建 WebDriver 實例(這裡以 Chrome 為例)
driver = webdriver.Chrome()
# 檢查 WebDriver 版本
print(f'webdriver __version__:{webdriver.__version__}')
# 關閉 WebDriver
driver.quit()
執行後應該可以看到輸出的版本:webdriver version:4.24.0
比對版本
將 Chrome 版本與 ChromeDriver 版本進行比對。一般來說,ChromeDriver 的版本號應該與 Chrome 的主版本號一致或略高。例如,Chrome 版本為 118,ChromeDriver 版本可以是 118 或更高。
3.將 ChromeDriver 添加到系統 PATH
確保 ChromeDriver 可被系統識別,或者在代碼中指定 ChromeDriver 的絕對路徑:
driver = webdriver.Chrome(executable_path="/path/to/chromedriver")
from selenium import webdriver
# 創建 Chrome 瀏覽器的 WebDriver 實例
driver = webdriver.Chrome()
# 導航到指定的網址
driver.get("https://example.com")
# 獲取目前頁面的 HTML 內容(渲染後的源碼)
print(driver.page_source)
# 關閉瀏覽器
driver.quit()
webdriver.Chrome()
:driver.get("https://www.google.com.tw/webhp?hl=zh-TW&cr=countryTW")
:driver.page_source
:driver.quit()
:關閉瀏覽器並釋放資源,防止內存泄漏。使用 Selenium 自動化搜尋並擷取 Google 搜尋結果的 Python 範例
進階爬蟲工具 Python-Selenium : sys 模組的主要功能
進階爬蟲工具 Python-Selenium : 定位
是 Python 中用來導入標準庫模組 time 裡的 sleep 函數。以下是詳細的解釋:
time 模組
time 是 Python 標準庫的一部分,提供與時間相關的多種功能,例如當前時間、計時、延遲執行等。
time.sleep(seconds)
from time import sleep
print("開始")
sleep(5) # 暫停 5 秒
print("結束")
輸出:
開始
(5 秒後)
結束
from time import sleep
print("倒數開始:")
for i in range(3, 0, -1):
print(i)
sleep(0.5) # 暫停 0.5 秒
print("時間到!")
輸出:
倒數開始:
3
2
1
時間到!
for i in range(5):
print(f"正在處理第 {i+1} 個任務...")
sleep(2) # 每個任務間隔 2 秒
import requests
from time import sleep
urls = ["https://example.com/page1", "https://example.com/page2"]
for url in urls:
response = requests.get(url)
print(f"訪問 {url} 的結果: {response.status_code}")
sleep(2) # 每次請求後暫停 2 秒
處理多線程或多進程中的同步問題: 用於等待某個操作完成後繼續執行。
創建動畫效果: 可以與控制台輸出結合,製作簡單的動畫。
import sys
from time import sleep
for i in range(5):
sys.stdout.write(".")
sys.stdout.flush()
sleep(0.5)
sys 是 Python 的一個內建模組,提供了一些與 Python 直譯器和系統相關的功能和變量。
使用 Selenium 自動化搜尋並擷取 Google 搜尋結果的 Python 範例
Python 進階爬蟲工具-Selenium : sys 模組的主要功能
Python 進階爬蟲工具-Selenium : 定位